package chaoyue.study.thread;

/**
 * 线程休眠(阻塞)
 * 注意：Thread.sleep()是静态方法，让当前执行这个方法的线程阻塞
 */
public class ThreadSleep {
    public static void main(String[] args) {
        Thread t = new Thread(() -> {
            for (int i = 0; i < 10; i++) {
                System.out.println(Thread.currentThread().getName() + "--->" + i);
            }
        });
        t.start();

        try {
            // 这里的t.sleep() 并不会让t这个线程休眠
            // 反而会让主线程休眠，因为sleep()是静态方法，使用t.sleep()等同于使用Thread.sleep()
            // 这就是静态方法推荐使用"类名".这种方式调用的原因，不会让人产生误解
            t.sleep(3000);
        } catch (InterruptedException e) {
            throw new RuntimeException(e);
        }

        System.out.println("main end");
    }
}
